package com.aikg.kgrag_java.config;


import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @ClassName: GlobalCacheConfig
 * @Description: 全局本地缓存配置类
 * @Author: 李宗雨
 * @Date: 2025/1/6 13:47
 * @Version: 1.0
 **/
@Configuration
public class GlobalCacheConfig {

    @Bean(name = "conversationCache")
    public Cache<String, Object> caffeineCache() {
        return Caffeine.newBuilder()
                // 设置缓存的过期时间，这里设置为写入后5分钟过期
                .expireAfterWrite(2, java.util.concurrent.TimeUnit.MINUTES)
                // 设置缓存的初始容量
                .initialCapacity(100)
                // 设置缓存的最大容量
                .maximumSize(1000)
                .build();
    }
}
